package com.uco.oop.interfaces;


// 传统interface，主要组成有静态成员方法和抽象成员方法，java 会自动省略关键字

// 接口的优势在于：
// 1、子类可以多实现，如果不全部实现就是抽象类，明确的知道子类实现的方法来自于哪里，子类的功能可以更加强大
// 2、继承了多态的特性，易于维护
public interface Animal {
    String name = "super animal";

    public abstract void jump();

}

interface Pet {
    String name = "normal pet";
    void eat();
    void sleep();

}

class Cat implements Animal, Pet {
    @Override
    public void jump() {
        System.out.println("i am cat, i can jump like a animal");
    }

    @Override
    public void eat() {
        System.out.println("i am cat, i can eat like a pet");
    }

    @Override
    public void sleep() {
        System.out.println("i am cat, i can sleep like a pet");
    }
}

class Dog implements Animal {
    @Override
    public void jump() {
        System.out.println("i am dog, i can jump like a animal");
    }
}